Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- VERTICAL ALIGN



  How big is sizeof structure?

First let's see the codes of a structure: struct node{ int a; int b; }; Question : What's sizeof(node)? The answer is very simple, on a 32 bit machine, an int will take 4 bytes and two ints will take 8 bytes. So sizeof(node) is 8. The answer for the above codes is 8, then how about the following structure: struct node{ char a; int b; }; Question : Then what's sizeof(node) now? int takes 4 bytes, char takes 1 bytes, is the answer 5? Now the answer may not be 5, on some mac...

   Data structure alignment, pack     2012-10-29 12:13:37

  Why should we drop or reduce use of MD5?

MD5 is a frequently used one-way hash algorithm, it is commonly used in following situations: Check data integrity. We take hash of the data stored in two different places and compare them. If the hash results are the same, then there is no need to check the actual data. This utilizes the collision-resistant feature. Two different data block will have little chance that their hash values will be the same. Many data service providers use such technique to check repeated data to avoild repeating...

   MD5,Vulnerability,attack     2012-09-29 04:47:49

  How can I teach a bright person, with no programming experience, how to program?

I usually prescribe the same sequence for anyone who wants to learn programming. It's very theoretical, but it lays a good foundation. It should take three or four months of fulltime study, but programming isn't something you learn overnight.If you can't get through this sequence, you're not going to be able to program, so you might as well give up now.Code, by Charles Petzold.The C Programming Language, K&RThe Structure and Interpretation of Computer Programs, Abelson and Sussman.My rule is...

   Steps,Programming,No experience,No knowledge     2011-11-07 08:27:48

  5 Ways to Boost MySQL Scalability

There are a lot of scalability challenges we see with clients over and over. The list could easily include 20, 50 or even 100 items, but we shortened it down to the biggest five issues we see.1. Tune those queriesBy far the biggest bang for your buck is query optimization. Queries can be functionally correct and meet business requirements without being stress tested for high traffic and high load. This is why we often see clients with growing pains, and scalability challenges as their site becom...

   MySQL,Scalability,Methods,Implementation,Practice     2011-10-18 02:57:27

  Don't Overload #nil?

There’s a popular post on Hacker News about writing confident code by, among other things, overloading Object#nil? and returning “null objects” instead of nil itself.DO NOT DO THIS.In Ruby, all objects (except nil itself) coerce to the boolean value true. Your object will be nil and true at the same time. Bad things will happen. Your coworkers will cry. Sad people from around the world will ask bewildering questions on your mailing list.Here’s what happen...

   Ruby,#nil,Overload,Object     2011-11-10 10:50:22

  STOP WRITING GOOD CODE; START WRITING GOOD SOFTWARE

Good software trumps elaborate code. And unfortunately, you can’t usually have both. The real world has deadlines and ship dates. It’s a game of pick two:Ship on timeShip with elaborate codeShip with a fantastic productAlmost always, you should pick the first and the last when you’re building software applications for users (if you’re building API’s or open source libraries for other developers, then it’s a different story). Too often I have seen de...

   Good software,Standard,Good code,Deadline,Tradeoff     2011-11-20 06:56:06

  Concise bash programming skills

The following are some concise bash programming skills which we may need in our daily programming work. 1. Check status of command execution The usual way: echo abcdee | grep -q abcd   if [ $? -eq 0 ]; then echo "Found" else echo "Not found" fi Concise way: if echo abcdee | grep -q abc; then echo "Found" else echo "Not found" fi Of course you can remove if...else with following code [Sun Nov 04 05:58 AM] [kodango@devops] ~/workspace $ echo abcdee | grep -q ...

   bash, skill,tip     2012-11-06 10:38:42

  Small team? Fix your life with a non-virtual assistant

Like many others, I tried “outsourcing my life” using a digital assistant. A year and a thousand bucks later, I’ve received one department store recommendation and an admittedly adequate spreadsheet of competitive research.I have since cancelled. Why didn’t it work for me?I think I just didn’t trust it/them/him/her (that I even have this ambiguity is indicative of the issues).Most of my mindless time-sinks involve at least a credit card number and are often a con...

   Work,Assistant,Team,Small,Individual,Get an assistant     2011-10-28 10:26:36

  I've got an idea for an app

I’ve been an iPhone developer for over three years now. The first app I built was CookieCombo. We sold enough copies to go bowling twice, but still it was completely worth it. We tweeted about it, and got some awesome gigs out of that. Everybody was in need of iPhone developers, and there was a huge shortage. Good times.As more and more people got to know that I’m an iPhone developer, I got to hear the following phrase more often: “Hey, you know, I got a great idea for an app...

   Idea,App,Induction,Creativity,Innovation     2011-09-08 10:37:09

  Address of a Java Object

In conventional java programming, you will never need address or location of a java object from memory. When you discuss about this in forums, the first question raised is why do you need to know the address of a java object? Its a valid question. But always, we reserve the right to experiment. Nothing is wrong in exploring uncharted areas.I thought of experimenting using a little known class from sun package. Unsafe is a class that belongs to sun.misc package. For some of you the package might ...

   Java,Object,Address,Memory,Start address     2011-09-29 11:17:46